package pool

type Pool interface {
	//缓冲池中缓冲器的统一容量
	BufferCap() uint32
	//缓冲器的最大数量
	MaxBufferNumber() uint32
	//缓冲器的数量
	BufferNum() uint32
	//数据总量
	Total() uint64
	//数据进入缓冲池
	Put(interface{}) error
	//从缓冲池获取数据
	Get(interface{}, error)
	//关闭缓冲池
	Close() bool
	//判断缓冲池是否关闭
	Closed() bool
}

//FIFO 缓冲器
type Buffer interface {
	//缓冲器的容量
	Cap() uint32
	//数据数量
	Len() uint32
	//向缓冲器放入数据
	Put(interface{}) (bool, error)
	//从缓冲器获取数据
	Get() (interface{}, error)
	//关闭
	Close() bool
	//关闭状态
	Closed() bool
}
